perm filename TEXDIF.PAR[TEX,DEK] blob
sn#419332 filedate 1979-02-22 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00006 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00003 00002 Differences between TEXHDR.SAI & previous version as of Feb. 17, 1979
C00011 00003 Differences between TEXPRE.SAI & previous version as of Feb. 17, 1979
C00020 00004 Differences between TEXSYS.SAI & previous version as of Feb. 17, 1979
C00029 00005 Differences between TEXSYN.SAI & previous version as of Feb. 17, 1979
C00035 00006 Differences between TEXSEM.SAI & previous version as of Feb. 17, 1979
C00054 ENDMK
C⊗;
Differences between TEXHDR.SAI & previous version as of Feb. 17, 1979
LINE 12, PAGE 1
1) comment be careful to define the following flags consistently;
1) define SUAI = ⊂false⊃ # turns on code for Stanford;
1) define MIT = ⊂false⊃ # turns on MIT code due to Guy Steele;
1) define TENEX = ⊂true⊃ # turns on code for Tenex sites;
1) define PARC = ⊂true⊃ # turns on PARC code due to Doug Wyatt & Leo Guibas;
1) define IFSUAI = ⊂ifc SUAI thenc⊃;
1) define IFMIT = ⊂ifc MIT thenc⊃;
1) define IFTENEX = ⊂ifc TENEX thenc⊃;
1) define IFPARC = ⊂ifc PARC thenc⊃;
1) define ENDSUAI = ⊂endc⊃;
1) define ENDMIT = ⊂endc⊃;
1) define ENDTENEX = ⊂endc⊃;
1) define ENDPARC = ⊂endc⊃;
1)
LINE 12, PAGE 1
2) define MIT = ⊂false⊃ # turns on MIT code due to Guy Steele;
2) ifcr MIT thenc define SUAI = ⊂false⊃ elsec define SUAI = ⊂true⊃ endc;
2)
2) define IFSUAI = ⊂ifc SUAI thenc⊃;
2) define IFMIT = ⊂ifc MIT thenc⊃;
2)
2) define ENDSUAI = ⊂endc⊃;
2) define ENDMIT = ⊂endc⊃;
2)
LINE 50, PAGE 1
1) define saf = ⊂safe⊃ # used when an array is believed to require no bounds checks;
1) DEBUGONLY redefine saf = ⊂⊃ # when debugging, belief turns to disbelief;
1) define simp = ⊂simple⊃ # used when SAIL can save time implementing this procedure;
LINE 45, PAGE 1
2) define simp = ⊂simple⊃ # used when SAIL can save time implementing this procedure;
LINE 4, PAGE 3
1) define closegroupchar = ifc TENEX thenc ⊂"}"⊃ elsec ⊂"}"⊃ endc;
1) define escape=0 # escape delimiter (\ in TEX manual);
LINE 4, PAGE 3
2) define escape=0 # escape delimiter (\ in TEX manual);
LINE 68, PAGE 3
1) define caseshift=62 # force specified case (\uppercase,\lowercase);
1) define mathinput=63 # component of math formula (\mathop,\mathbin, etc.);
LINE 67, PAGE 3
2) define caseshift=62 # force specified case (\uppercase, \lowercase);
2) define mathinput=63 # component of math formula (\mathop,\mathbin, etc.);
LINE 5, PAGE 4
1)
1) define type(p)=⊂field(type,mem[p])⊃ # shorthand for type field;
1) define value(p)=⊂field(value,mem[p])⊃ # shorthand for value field;
1) define charnode=0 # type code for a character box;
1) comment fields of the value field of a charnode;
1) define chrs=7, chrd=0 # character code;
1) define fonts=5, fontd=chrs # font;
1) define fchrs=chrs+fonts, fchrd=chrd # font and char (index into fontinfo);
1) ifc PARC thenc define hues=3,hued=fchrs # color (assumes 36-bit words); endc
1) define hlistnode=1 # type code for a box made from an hlist;
LINE 5, PAGE 4
2) define type(p)=⊂field(type,mem[p])⊃ # shorthand for type field;
2) define value(p)=⊂field(value,mem[p])⊃ # shorthand for value field;
2) define charnode=0 # type code for a character box;
2) define hlistnode=1 # type code for a box made from an hlist;
LINE 37, PAGE 4
1) define nestsize = 40 # max number of things going on simultaneously;
1) external saf integer array modestack[0:nestsize-1]; external integer mode
LINE 31, PAGE 4
2) define nestsize = 20 # max number of things going on simultaneously;
2) external saf integer array modestack[0:nestsize-1]; external integer mode
LINE 9, PAGE 5
1) ifc PARC thenc
1) define rfudge=⊂1.1⊃ # printing magnification factor;
1) elsec
1) define xgpconv=⊂3.6⊃ # assumed number of pixels per point on the XGP;
LINE 9, PAGE 5
2) define xgpconv=⊂3.6⊃ # assumed number of pixels per point on the XGP;
LINE 18, PAGE 5
1) endc
1)
LINE 15, PAGE 5
2)
Differences between TEXPRE.SAI & previous version as of Feb. 17, 1979
LINE 21, PAGE 2
1) ifc TENEX thenc
1) if c='37 then return # Tenex end-of-line character;
1) elsec
1) if c='15 then begin c←inchrw # ignore the line-feed; return end;
1) endc
1) if c='12 then begin pausing_on_errors←false; return end;
1) ifc not TENEX thenc
1) if c="T" or c="t" then edfile(curfile,curfline,curfpage);
1) endc
1) if c="X" or c="x" then quit;
1) print(nextline,"Type <cr> to continue, <lf> to flash error messages,
1) ", ifc not TENEX thenc "t or T to edit, ", endc "x or X to quit.");
1) end;
LINE 21, PAGE 2
2) if c='15 then begin c←inchrw # ignore the line-feed; return end;
2) if c='12 then begin pausing_on_errors←false; return end;
2) if c="T" or c="t" then edfile(curfile,curfline,curfpage);
2) if c="X" or c="x" then quit;
2) print(nextline,"Type <cr> to continue, <lf> to flash error messages,
2) t or T to edit, x or X to quit.");
2) end;
LINE 29, PAGE 3
1) IFPARC memreal(hsizemem)←4.5*72.0 ENDPARC # default hsize is about 4.5 inches;
1) IFPARC memreal(vsizemem)←7.0*72.0 ENDPARC # default vsize is about 7.0 inches;
1) IFPARC memreal(maxdepthmem)←3.0 ENDPARC # default maxdepth is 3.0 points;
1) IFPARC memreal(topbaselinemem)←10.0 ENDPARC # default topbaseline is 10.0 points;
1) comment The default value of parindent is 0.0;
1) identer("hsize",assignreal,hsizemem); pagemem[hsizemem]←4.5*72.0;
LINE 29, PAGE 3
2) identer("hsize",assignreal,hsizemem); pagemem[hsizemem]←4.5*72.0;
LINE 57, PAGE 3
1) IFPARC
1) comment identer(".",color,0) # colorloc is hashsize+".";
1) ENDPARC
1)
1) identer("def",def,0);
LINE 52, PAGE 3
2)
2) identer("def",def,0);
LINE 264, PAGE 3
1) identer(ifc MIT thenc '30 elsec "←" endc,mathonly,rel('450)) # <=;
1) identer("→",mathonly,rel('451)) # =>;
1) identer(ifc MIT thenc '13 elsec "↑" endc,mathonly,rel('452)) # ∧||;
1) identer("↓",mathonly,rel('453)) # ∨1) ||;
LINE 256, PAGE 3
2) identer(IFSUAI "←" ENDSUAI IFMIT "_" ENDMIT,mathonly,rel('450)) # <=;
2) identer("→",mathonly,rel('451)) # =>;
2) identer(IFSUAI "↑" ENDSUAI IFMIT "" ENDMIT,mathonly,rel('452)) # ∧||;
2) identer("↓",mathonly,rel('453)) # ∨2) ||;
LINE 318, PAGE 3
1) ifc SUAI or PARC thenc
1) identer('176&null,mathonly,cls('547)) # Stanford's right brace;
1) endc
1) ifc not SUAI thenc
1) identer('175&null,mathonly,cls('547)) # Ascii right brace;
1) endc
1) identer("langle",mathonly,opn('550)) # left angle bracket;
LINE 310, PAGE 3
2) identer(IFSUAI "}" ENDSUAI IFMIT '175&null ENDMIT,mathonly,cls('547)) # right brace;
2) identer("langle",mathonly,opn('550)) # left angle bracket;
LINE 16, PAGE 8
1) ifc SUAI or PARC thenc
1) delimtable['176&null] ← '547611 # Stanford right brace;
1) endc
1) ifc not SUAI thenc
1) delimtable['175&null] ← '547611 # Ascii right brace;
1) endc
1) end;
LINE 16, PAGE 8
2) delimtable[IFSUAI "}" ENDSUAI IFMIT '175&null ENDMIT] ← '547611;
2) end;
LINE 4, PAGE 10
1) string errname, tblname;
1)
1) ifc MIT thenc
1) errname ← "ERRORS TMP"; tblname ← "TEX;TEXINI TBL";
1) elsec
1) errname ← "ERRORS.TMP"; tblname ← "TEXINI.TBL";
1) endc
1)
1) setprint(errname,"B");
1)
1)
LINE 4, PAGE 10
2) IFSUAI
2) setprint("errors.tmp","B");
2) ENDSUAI
2) IFMIT
2) setprint("errors tmp","B");
2) ENDMIT
2)
LINE 20, PAGE 10
1) enter(chan,tblname,eof);
1) wordout(chan,hashsize);
LINE 16, PAGE 10
2) IFSUAI
2) enter(chan,"TEXINI.TBL",eof);
2) ENDSUAI
2) IFMIT
2) enter(chan,"TEX;TEXINI TBL",eof);
2) ENDMIT
2) wordout(chan,hashsize);
LINE 64, PAGE 10
1) print(nextline,"TEX tables written on ",tblname);
1) end_of_texpre:
LINE 65, PAGE 10
2) IFSUAI
2) print(nextline,"TEX tables written on TEXINI.TBL.");
2) ENDSUAI
2) IFMIT
2) print(nextline,"TEX tables written on TEX;TEXINI TBL");
2) ENDMIT
2) end_of_texpre:
Differences between TEXSYS.SAI & previous version as of Feb. 17, 1979
LINE 25, PAGE 2
1) ifc TENEX thenc
1) if c='37 then return # Tenex end-of-line character;
1) elsec
1) if c='15 then begin c←inchrw # ignore the line-feed; return end;
1) endc
1) if c='12 then begin pausing_on_errors←false; return end;
1) if c>'140 then c←c-'40 # change lower case to upper case;
1) ifc not TENEX thenc
1) if c="E" or c="T" then
LINE 25, PAGE 2
2) if c='15 then begin c←inchrw # ignore the line-feed; return end;
2) if c='12 then begin pausing_on_errors←false; return end;
2) if c>'140 then c←c-'40 # change lower case to upper case;
2) if c="E" or c="T" then
LINE 42, PAGE 2
1) endc
1) if c="I" then
1) begin pushinput;
1) print(nextline,"*"); inbuf←inchwl # wait for user to type a line;
1) setprint(null,"F"); print(inbuf&ifc TENEX thenc nextline elsec '15 endc); setprint(null,"B") # echo it;
1) curbuf←inbuf; state←midline; filename←null;
LINE 37, PAGE 2
2) if c="I" then
2) begin pushinput;
2) print(nextline,"*"); inbuf←inchwl # wait for user to type a line;
2) setprint(null,"F"); print(inbuf&'15); setprint(null,"B") # echo it;
2) curbuf←inbuf; state←midline; filename←null;
LINE 67, PAGE 2
1) print(nextline," i or I to insert something,",
1) ifc not TENEX thenc " e or E to edit,", endc
1) " x or X to quit.",nextline);
1) end;
LINE 61, PAGE 2
2) print(nextline," i or I to insert something, e or E to edit,",
2) " x or X to quit.",nextline);
2) end;
LINE 4, PAGE 7
1) string errname,tblname;
1)
1) errname ← ifc MIT thenc "ERRORS TMP" elsec "ERRORS.TMP" endc;
1) tblname ← ifc MIT thenc "TEX;TEXINI TBL" elsec "TEXINI.TBL" endc;
1)
1) comment The declarations have now ended, TEX starts here after being loaded;
LINE 4, PAGE 7
2) comment The declarations have now ended, TEX starts here after being loaded;
LINE 21, PAGE 7
1) lookup(chan,tblname,eof);
1) if eof or wordin(chan)≠hashsize or wordin(chan)≠eqtbsize or
LINE 16, PAGE 7
2) IFSUAI
2) lookup(chan,"TEXINI.TBL",eof);
2) ENDSUAI
2) IFMIT
2) lookup(chan,"TEX;TEXINI TBL",eof);
2) ENDMIT
2) if eof or wordin(chan)≠hashsize or wordin(chan)≠eqtbsize or
LINE 28, PAGE 7
1) print(tblname," is clobbered!");
1) go to final_end;
LINE 28, PAGE 7
2) IFSUAI
2) print("TEXINI.TBL is clobbered!");
2) ENDSUAI
2) IFMIT
2) print("TEX;TEXINI TBL is clobbered!");
2) ENDMIT
2) go to final_end;
LINE 57, PAGE 7
1) outstr("TEX's tables have been initialized. "&
1) "Please SAVE the core image.");
1) ifc SUAI or MIT thenc ptostr(0,"SAVE tex") endc # this is what the user probably wants to do next;
1) ifc TENEX thenc if inchwl then endc;
1) ifc not PARC thenc go to final_end endc;
1) end;
1) setformat(0,4) # controls format of cvf in diagnostic routine "dumpnodelist";
1) setprint(errname,"B") # printing goes to file as well as terminal;
1) ifc PARC thenc print("PARC TEX 3.1 of February 11, 1979",nextline); endc
1) initext # initialize the extensions if any;
1) initsave # initialize the save-restore mechanism;
1) DEBUGONLY dynused←varused←0;
1) initin # initialize the input system;
LINE 62, PAGE 7
2) outstr("OK, TEX's tables have been initialized. "&
2) "Please SAVE the core image.");
2) ptostr(0,"SAVE tex") # this is what the user probably wants to do next;
2) go to final_end;
2) end;
2) initext # initialize the extensions if any;
2) initsave # initialize the save-restore mechanism;
2) setformat(0,4) # controls format of cvf in diagnostic routine "dumpnodelist";
2) IFSUAI
2) setprint("errors.tmp","B") # printing goes to file as well as terminal;
2) ENDSUAI
2) IFMIT
2) setprint("errors tmp","B") # printing goes to file as well as terminal;
2) ENDMIT
2) initin # initialize the input system;
LINE 74, PAGE 7
1) setprint(errname,"N") # close print output file;
1) finishext # do any closing actions desired by extensions;
LINE 81, PAGE 7
2) IFSUAI
2) setprint("errors.tmp","N") # close print output file;
2) ENDSUAI
2) IFMIT
2) setprint("errors tmp","N") # close print output file;
2) ENDMIT
2) finishext # do any closing actions desired by extensions;
Differences between TEXSYN.SAI & previous version as of Feb. 17, 1979
LINE 36, PAGE 1
1) internaldef closegroupchar = ifc TENEX thenc "}" elsec "}" endc;
1)
1) internal integer curcmd # the current command code appearing in the input;
LINE 36, PAGE 1
2) internal integer curcmd # the current command code appearing in the input;
LINE 86, PAGE 9
1) ifc SUAI or MIT thenc ptostr(0, elsec outstr( endc
1) inbuf[1 to ∞-1]) # show inbuf on screen;
1) inbuf←inchwl&inbuf[∞ to ∞];
LINE 86, PAGE 9
2) ptostr(0,inbuf[1 to ∞-1]) # show inbuf on screen;
2) inbuf←inchwl&inbuf[∞ to ∞];
LINE 186, PAGE 9
1) begin backerror("Missing "&closegroupchar&" inserted"); curcmd←rbrace;
1) end;
LINE 185, PAGE 9
2) begin backerror("Missing } inserted"); curcmd←rbrace;
2) end;
LINE 63, PAGE 11
1) " can't begin with "&closegroupchar);
1) gettok;
LINE 63, PAGE 11
2) " can't begin with }");
2) gettok;
LINE 5, PAGE 12
1) comment If the site is not SUAI or MIT then the file "TEXFIL.SAI" should
1) contain appropriate code for the abovementioned three procedures;
1)
1) internal saf string array fontname[0:31] # user name for each font code;
1)
1) ifc SUAI or MIT thenc
1)
1) IFSUAI
LINE 5, PAGE 12
2) IFSUAI
LINE 146, PAGE 12
1) internal procedure definefont(integer f) # Do this after seeing "=" of font def;
LINE 139, PAGE 12
2) internal saf string array fontname[0:31] # user name for each font code;
2)
2) internal procedure definefont(integer f) # Do this after seeing "=" of font def;
LINE 188, PAGE 12
1) elsec require "TEXFIL.SAI" source_file; endc
1)
1) ↑Lcomment Basic scanning routines: backinput,scandigit,scanlb,scanstring,scannumber;
LINE 183, PAGE 12
2) ↑Lcomment Basic scanning routines: backinput,scandigit,scanlb,scanstring,scannumber;
LINE 17, PAGE 14
1) ifc SUAI or MIT thenc
1) if scanstring("xgp") then x←x*(200.0*0.013837/xgpconv) # for Stanford XGP only;
1) endc
1) IFPARC
1) if scanstring("true") then x←x/rfudge # for PARC printers only;
1) ENDPARC
1) if scanstring("pt") then comment already in points;
LINE 17, PAGE 14
2) if scanstring("xgp") then x←x*(200.0*0.013837/xgpconv) # for Stanford XGP only;
2) if scanstring("pt") then comment already in points;
LINE 20, PAGE 15
1) while curchar≠"=" and curchar≠ ifc MIT thenc "_" elsec "←" endc do
1) begin backerror("First use of font must define it"); getnctok;
LINE 20, PAGE 15
2) while curchar≠"=" and curchar≠ IFSUAI "←" ENDSUAI IFMIT "_" ENDMIT do
2) begin backerror("First use of font must define it"); getnctok;
Differences between TEXSEM.SAI & previous version as of Feb. 17, 1979
LINE 30, PAGE 1
1) require "A" message;
1)
1) require "TEXHDR.SAI" source_file;
LINE 30, PAGE 1
2) require "TEXHDR.SAI" source_file;
LINE 6, PAGE 4
1) internaldef nestsize = 40 # max number of things going on simultaneously;
1)
LINE 6, PAGE 4
2) internaldef nestsize = 20 # max number of things going on simultaneously;
2)
LINE 246, PAGE 6
1) '225,'215,'216,ifc not MIT thenc op('563) elsec rel('442) endc,
1) bin('406),bin('410),'461,'245,
1) comment lambda,gamma,delta,ifc not MIT thenc integral elsec up endc,
1) plsmns,circplus,infinity,partl;
1) rel('432),rel('433),bin('534),bin('533),'470,'471,bin('412),rel('444),
1) comment cont_in,contains,cap,cup,for_all,exists,circtms,dblarrow;
1) ifc not MIT thenc '465 elsec rel('440) endc,rel('441),
1) ifc not MIT thenc rel('430) elsec rel('434) endc,
1) ifc not MIT thenc rel('434) elsec bin('405) endc,
1) rel('424),rel('425),rel('421),bin('537),
1) comment ifc not MIT thenc underline elsec left endc,right,
1) ifc not MIT thenc tilde elsec uneq endc,
1) ifc not MIT thenc uneq elsec diamond endc,
1) lseq,gteq,equiv,join;
LINE 246, PAGE 6
2) '225,'215,'216,IFSUAI op('563) ENDSUAI IFMIT rel('442) ENDMIT,
2) bin('406),bin('410),'461,'245,
2) comment lambda,gamma,delta,IFSUAI integral ENDSUAI IFMIT up ENDMIT,
2) plsmns,circplus,infinity,partl;
2) rel('432),rel('433),bin('534),bin('533),'470,'471,bin('412),rel('444),
2) comment cont_in,contains,cap,cup,for_all,exists,circtms,dblarrow;
2) IFSUAI '465 ENDSUAI IFMIT rel('440) ENDMIT,rel('441),
2) IFSUAI rel('430) ENDSUAI IFMIT rel('434) ENDMIT,
2) IFSUAI rel('434) ENDSUAI IFMIT bin('405) ENDMIT,
2) rel('424),rel('425),rel('421),bin('537),
2) comment IFSUAI underline ENDSUAI IFMIT left ENDMIT,right,
2) IFSUAI tilde ENDSUAI IFMIT uneq ENDMIT,
2) IFSUAI uneq ENDSUAI IFMIT diamond ENDMIT,
2) lseq,gteq,equiv,join;
LINE 275, PAGE 6
1) ifc not MIT thenc rel('442) elsec rel('442) endc,
1) ifc not MIT thenc rel('440) elsec '465 endc,
1) comment X,Y,Z,left_bracket,backslash,right_bracket,
1) ifc not MIT thenc up elsec up endc,
1) ifc not MIT thenc left elsec underscore endc;
1) opn('140),'341,'342,'343,'344,'345,'346,'347,
LINE 275, PAGE 6
2) IFSUAI rel('442) ENDSUAI IFMIT rel('442) ENDMIT,
2) IFSUAI rel('440) ENDSUAI IFMIT '465 ENDMIT,
2) comment X,Y,Z,left_bracket,backslash,right_bracket,
2) IFSUAI up ENDSUAI IFMIT up ENDMIT,
2) IFSUAI left ENDSUAI IFMIT underscore ENDMIT;
2) opn('140),'341,'342,'343,'344,'345,'346,'347,
LINE 287, PAGE 6
1) ifc SUAI thenc bin('405) elsec cls('547) endc,
1) ifc SUAI thenc cls('547) elsec rel('430) endc,
1) ifc not MIT thenc bin('017) elsec op('563) endc;
1) comment x,y,z,left_brace,absolute,
1) ifc SUAI thenc diamond elsec rightbrace endc,
1) ifc SUAI thenc rightbrace elsec tilde endc,
1) ifc not MIT thenc hat elsec integral endc;
1) saf integer array mathdecode[0:'177] # decoding table for characters in math mode;
1)
LINE 287, PAGE 6
2) IFSUAI bin('405) ENDSUAI IFMIT cls('547) ENDMIT,
2) IFSUAI cls('547) ENDSUAI IFMIT rel('430) ENDMIT,
2) IFSUAI bin('017) ENDSUAI IFMIT op('563) ENDMIT;
2) comment x,y,z,left_brace,absolute,
2) IFSUAI diamond ENDSUAI IFMIT rightbrace ENDMIT,
2) IFSUAI rightbrace ENDSUAI IFMIT tilde ENDMIT,
2) IFSUAI hat ENDSUAI IFMIT integral ENDMIT;
2) saf integer array mathdecode[0:'177] # decoding table for SUAI characters;
2)
LINE 54, PAGE 7
1) ↑Lrequire "B" message;
1)
1) comment Font information.
1)
LINE 54, PAGE 7
2) ↑Lcomment Font information.
2)
LINE 81, PAGE 8
1) device parameters, then come the math parameters if any.
1)
1) ifc PARC thenc
1) TEX font information files at PARC have extension TFP. A TFP file has no
1) "ndw" word, and no devicewidth table. (The finfo table still has a "dw"
1) field, which is 0, for each character.) The first two device parameter
1) words are significant. The first of these words contains the font face
1) code in the left half, and the font size in micas in the right half. The
1) second device parameter is a real number, "rfudge". This is the factor
1) by which dimensions are magnified on the printed page.
1) endc
1) ;
1) internaldef fmemsize=3200 # size of font memory for secondary tables;
LINE 79, PAGE 8
2) device parameters, then come the math parameters if any;
2)
2) internaldef fmemsize=3200 # size of font memory for secondary tables;
LINE 187, PAGE 8
1) begin integer n,p,m;
1) n←wordin(chan);
1) m←n-(128+ifc PARC thenc 5 elsec 6 endc) # number of words to go into fmem;
1) if fmemptr+m≥fmemsize then overflow(fmemsize);
1) arryin(chan,fontinfo[f lsh 7],128) # read primary character info;
LINE 175, PAGE 8
2) begin integer n,p;
2) n←wordin(chan);
2) if fmemptr+n≥fmemsize+128+6 then overflow(fmemsize);
2) arryin(chan,fontinfo[f lsh 7],128) # read primary character info;
LINE 199, PAGE 8
1) parbase[f]←dwbase[f]+ifc PARC thenc 0 elsec wordin(chan) endc;
1) arryin(chan,fmem[p],m);
1) fmemptr←fmemptr+m;
1) end;
LINE 186, PAGE 8
2) parbase[f]←dwbase[f]+wordin(chan);
2) arryin(chan,fmem[p],n-(128+6));
2) fmemptr←fmemptr+n-(128+6);
2) end;
LINE 118, PAGE 12
1) require "C" message;
1)
1) simp procedure trybreak(real penalt,w) # decides if p might be a
LINE 118, PAGE 12
2) simp procedure trybreak(real penalt,w) # decides if p might be a
LINE 211, PAGE 12
1) else begin comment This case can arise only in weird circumstances
1) due to changing line lengths or boxes of negative width;
1) integer p;
1) p←topopen;
LINE 209, PAGE 12
2) else begin comment This case can arise only in weird circumstances
2) due to changing line lengths, and the code may in fact never
2) be executed. But anyway here it is, in case the algorithm
2) gets extended to situations making this more likely;
2) p←topopen;
LINE 388, PAGE 12
1) end;
1) if ragged then glueset(r)←glueset(r)*(100.0/(100.0+ragged));
LINE 387, PAGE 12
2) end
2) else if ragged then glueset(r)←glueset(r)*(100.0/(100.0+ragged));
LINE 2, PAGE 16
1) require "D" message;
1)
1) procedure initalign # beginning an \halign or \valign;
LINE 2, PAGE 16
2) procedure initalign # beginning an \halign or \valign;
LINE 82, PAGE 17
1) [bottomlevel] begin error("Too many "&closegroupchar&"'s"); go to bigswitch end;
1) [simpleblock] go to bigswitch;
LINE 82, PAGE 17
2) [bottomlevel] begin error("Too many }'s"); go to bigswitch end;
2) [simpleblock] go to bigswitch;
LINE 343, PAGE 17
1) if curcmd=endv then backerror("Missing "&closegroupchar&" inserted");
1) chcodedef(j,scannumber); justpar←jpar; go to bigswitch end;
LINE 343, PAGE 17
2) if curcmd=endv then backerror("Missing } inserted");
2) chcodedef(j,scannumber); justpar←jpar; go to bigswitch end;
LINE 374, PAGE 17
1) backerror("Missing "&closegroupchar&" inserted") else c←curchar; getnctok; if curcmd=endv then
1) backerror("Missing "&closegroupchar&" inserted") else scancond(curchar=c);
1) comment Although an endv code is unlikely here, it is best to make sure that
LINE 374, PAGE 17
2) backerror("Missing } inserted") else c←curchar; getnctok; if curcmd=endv then
2) backerror("Missing } inserted") else scancond(curchar=c);
2) comment Although an endv code is unlikely here, it is best to make sure that
LINE 509, PAGE 17
1) error("Ambiguous; you need another { and "&closegroupchar); go to bigswitch;
1) end;
LINE 509, PAGE 17
2) error("Ambiguous; you need another { and }"); go to bigswitch;
2) end;
LINE 9, PAGE 18
1) extrarb: alignstate←alignstate+1; error("Extra "&closegroupchar);
1) saveptr←saveptr+1; curlev←curlev+level1; go to bigswitch;
LINE 9, PAGE 18
2) extrarb: alignstate←alignstate+1; error("Extra }");
2) saveptr←saveptr+1; curlev←curlev+level1; go to bigswitch;
LINE 22, PAGE 18
1) else begin backerror("Missing "&closegroupchar&" inserted"); curcmd←rbrace;
1) end;
LINE 22, PAGE 18
2) else begin backerror("Missing } inserted"); curcmd←rbrace;
2) end;